// Boomstick (Quake)

ACTOR Boomstick : IDMWeapon
{
	Weapon.SelectionOrder 900
	Weapon.AmmoType "IDMShell"
	Weapon.AmmoGive 4
	Weapon.AmmoUse 1
	Weapon.Kickback 50
	//Weapon.PreferredSkin "ShotgunMarine"
	Inventory.PickupMessage "Boomstick! (Slot 3)"
	Obituary "%o chewed on %k's boomstick."
	Attacksound "weapons/bstick"
	Tag "Boomstick"
	Decal Bulletchip
	Damagetype "Bullet"
	+WEAPON.ALLOW_WITH_RESPAWN_INVUL
	+WEAPON.NOLMS
	States
	{
	Spawn:
	  BOMS A -1 Bright
	  Stop
	Ready:
	  BSTK A 1 A_WeaponReady
  	  Loop
	Deselect:
	  TNT1 A 0 A_Lower
	  TNT1 A 0 A_Lower
	  BSTK A 1 A_Lower
	  Loop
	Select:
	  TNT1 A 0 A_PlaySound("weapons/wswitch",CHAN_WEAPON)
	Sloop:
	  TNT1 A 0 A_Raise
	  TNT1 A 0 A_Raise
	  BSTK A 1 A_Raise
	  Loop
	Fire:
	  TNT1 A 0 A_GunFlash
	  TNT1 A 0 A_JumpIfInventory("PowerIDMWeaponLevel2",1,"Level2")
	  TNT1 A 0 A_JumpIfInventory("PowerQuadDamage",1,"Quad")
	Normal:
	  BSTK B 6 Bright A_Firebullets(2.8,1.775,10,5,"IDMShotPuff")
	  Goto FireEnd
	Level2:
	  TNT1 A 0 A_JumpIfInventory("PowerQuadDamage", 1, "QuadLevel2")
	  BSTK B 2 Bright A_Firebullets(2.8,1.775,10,5,"IDMShotPuff",FBF_NOFLASH)
	  BSTK B 2 Bright A_Firebullets(2.8,1.775,10,5,"IDMShotPuff",FBF_NOFLASH)
	  BSTK B 2 Bright A_Firebullets(2.8,1.775,10,5,"IDMShotPuff")
	  Goto FireEnd
	Quad:
	  TNT1 A 0 A_Playsound("misc/qdmg",CHAN_AUTO,1)
	  BSTK B 6 Bright A_Firebullets(2.8,1.775,10,5,"ExtremeShotPuff")
	  Goto FireEnd
	QuadLevel2:
	  TNT1 A 0 A_Playsound("misc/qdmg2",CHAN_5,1)
	  BSTK B 2 Bright A_Firebullets(2.8,1.775,10,5,"ExtremeShotPuff",FBF_NOFLASH)
	  TNT1 A 0 A_Playsound("misc/qdmg2",CHAN_5,1)
	  BSTK B 2 Bright A_Firebullets(2.8,1.775,10,5,"ExtremeShotPuff",FBF_NOFLASH)
	  TNT1 A 0 A_Playsound("misc/qdmg2",CHAN_5,1)
	  BSTK B 2 Bright A_Firebullets(2.8,1.775,10,5,"ExtremeShotPuff")
	FireEnd:
	  BSTK C 6
	  BSTK A 6
	  TNT1 A 0 A_Refire
	  Goto Ready
	Flash:
	  BSTK D 4 Bright A_Light1
	  Goto LightDone
	}
}